package com.flyco.modules.cms.entity;

import java.io.Serializable;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.*;
import com.flyco.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import com.flyco.poi.excel.annotation.Excel;

/**
 * @Description: 文章表
 * @Author: flyco
 * @Date:   2020-07-16
 * @Version: V1.0
 */
@Data
@TableName("cms_article_v2")
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="cms_article_v2对象", description="文章表")
public class CmsArticleV2 {
    
	/**id*/
	@TableId(type = IdType.AUTO)
    @ApiModelProperty(value = "id")
	private Long id;
	/**地址*/
	@Excel(name = "地址", width = 15)
    @ApiModelProperty(value = "地址")
	private String url;
	/**标题*/
	@Excel(name = "标题", width = 15)
    @ApiModelProperty(value = "标题")
	private String title;
	/**页面关键字*/
	@Excel(name = "页面关键字", width = 15)
    @ApiModelProperty(value = "页面关键字")
	private String keyword;
	/**摘要*/
	@Excel(name = "摘要", width = 15)
    @ApiModelProperty(value = "摘要")
	private String description;
	/**封面*/
	@Excel(name = "封面", width = 15)
    @ApiModelProperty(value = "封面")
	private String cover;
	/**内容*/
	@Excel(name = "内容", width = 15)
    @ApiModelProperty(value = "内容")
	private Object content;
	/**显示的作者名*/
	@Excel(name = "显示的作者名", width = 15)
    @ApiModelProperty(value = "显示的作者名")
	private String author;
	/**内容内图片列表复制*/
	@Excel(name = "内容内图片列表复制", width = 15)
    @ApiModelProperty(value = "内容内图片列表复制")
	private String pics;
	/**页面商品广告列表*/
	@Excel(name = "页面商品广告列表", width = 15)
    @ApiModelProperty(value = "页面商品广告列表")
	private String goodsList;
	/**状态：1草稿，2审核中，3审核失败，4已发布，5已删除*/
	@Excel(name = "状态：1草稿，2审核中，3审核失败，4已发布，5已删除", width = 15)
    @ApiModelProperty(value = "状态：1草稿，2审核中，3审核失败，4已发布，5已删除")
	private Integer status;
	/**是否展示评论：1允许评论，2不允许评论*/
	@Excel(name = "是否展示评论：1允许评论，2不允许评论", width = 15)
    @ApiModelProperty(value = "是否展示评论：1允许评论，2不允许评论")
	@Dict(dicCode = "yn")
	private Integer allowComment;
	/**是否展示评论：1展示，2不展示*/
	@Excel(name = "是否展示评论：1展示，2不展示", width = 15)
    @ApiModelProperty(value = "是否展示评论：1展示，2不展示")
	@Dict(dicCode = "yn")
	private Integer showComment;
	/**浏览数（快照）*/
	@Excel(name = "浏览数（快照）", width = 15)
    @ApiModelProperty(value = "浏览数（快照）")
	private Integer viewCount;
	/**点赞数（快照）*/
	@Excel(name = "点赞数（快照）", width = 15)
    @ApiModelProperty(value = "点赞数（快照）")
	private Integer likeCount;
	/**评价数（后台计算出来）*/
	@Excel(name = "评价数（后台计算出来）", width = 15)
    @ApiModelProperty(value = "评价数（后台计算出来）")
	private Integer commentCount;
	/**发布管理员*/
	@Excel(name = "发布管理员", width = 15)
    @ApiModelProperty(value = "发布管理员")
	private String publisher;
	/**审核员*/
	@Excel(name = "审核员", width = 15)
    @ApiModelProperty(value = "审核员")
	private String reviewer;
	/**删除状态：0->未删除；1->已删除*/
	@Excel(name = "删除状态：0->未删除；1->已删除", width = 15)
    @ApiModelProperty(value = "删除状态：0->未删除；1->已删除")
	@TableLogic
	private Integer deleteStatus;
	/**创建人*/
	@Excel(name = "创建人", width = 15)
    @ApiModelProperty(value = "创建人")
	private String createBy;
	/**创建时间*/
	@Excel(name = "创建时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建时间")
	private Date createTime;
	/**更新人*/
	@Excel(name = "更新人", width = 15)
    @ApiModelProperty(value = "更新人")
	private String updateBy;
	/**更新时间*/
	@Excel(name = "更新时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新时间")
	private Date updateTime;
}
